<template>
  <!--楼层-->
  <div class="floor">
    <div class="py-container">
      <div class="title clearfix">
        <!-- 解释：floorJson名称。 -->
        <h3 class="fl">{{ floor.name }}</h3>
        <div class="fr">
          <ul class="nav-tabs clearfix">
            <!-- 解释：floorJson导航栏目。 -->
            <li class="active" v-for="(navigate, index) in floor.navList" v-bind:key="index">
              <a href="#tab1" data-toggle="tab">{{ navigate.text }}</a>
            </li>
          </ul>
        </div>
      </div>
      <div class="tab-content">
        <div class="tab-pane">
          <div class="floor-1">
            <div class="blockgary">
              <ul class="jd-list">
                <!-- 解释：floorJson关键字。 -->
                <li v-for="(keyword, index) in floor.keywords" v-bind:key="index">
                  {{ keyword }}
                </li>
              </ul>
              <!-- 解释：floorJson图片。 -->
              <img v-bind:src="floor.imgUrl" alt="" title=""/>
            </div>
            <div class="floorBanner">
              <!-- 解释：floorJson轮播图。整合（Swiper）轮播图插件。 -->
              <div class="swiper-container" id="floor1Swiper" ref="youSwiper">
                <div class="swiper-wrapper">
                  <div class="swiper-slide" v-for="(item, index) in floor.carouselList" v-bind:key="item.id">
                    <img v-bind:src="item.imgUrl" alt="" title="">
                  </div>
                </div>
                <!-- 如果需要分页器 -->
                <div class="swiper-pagination"></div>

                <!-- 如果需要导航按钮 -->
                <div class="swiper-button-prev"></div>
                <div class="swiper-button-next"></div>
              </div>
            </div>
            <div class="split">
              <span class="floor-x-line"></span>
              <div class="floor-conver-pit">
                <!-- 解释：floorJson图片。 -->
                <img v-bind:src="floor.recommendList[0]" alt="" title=""/>
              </div>
              <div class="floor-conver-pit">
                <!-- 解释：floorJson图片。 -->
                <img v-bind:src="floor.recommendList[1]" alt="" title=""/>
              </div>
            </div>
            <div class="split center">
              <!-- 解释：floorJson图片。 -->
              <img v-bind:src="floor.bigImg" alt="" title=""/>
            </div>
            <div class="split">
              <span class="floor-x-line"></span>
              <div class="floor-conver-pit">
                <!-- 解释：floorJson图片。 -->
                <img v-bind:src="floor.recommendList[2]" alt="" title=""/>
              </div>
              <div class="floor-conver-pit">
                <!-- 解释：floorJson图片。 -->
                <img v-bind:src="floor.recommendList[3]" alt="" title=""/>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</template>

<script>
import Swiper from "swiper";
import "swiper/css/swiper.css";

export default {
  name: 'FloorView',
  props: [
    'floor'
  ],
  mounted() {
    // 初始化Swiper轮播图插件的实例对象
    // const mySwiper = new Swiper(this.$refs.youSwiper, {
    //   direction: "horizontal",
    //   loop: true,
    //   pagination: {
    //     el: ".swiper-pagination",
    //     type: "bullets",
    //     clickable: true,
    //   },
    //   autoplay: {
    //     delay: 1000,
    //     stopOnLastSlide: true,
    //     disableOnInteraction: false,
    //   },
    //   navigation: {
    //     nextEl: ".swiper-button-next",
    //     prevEl: ".swiper-button-prev",
    //   },
    //   effect: "cube",
    // });
    // mySwiper.el.onmouseover = function () {
    //   mySwiper.autoplay.stop();
    // };
    // mySwiper.el.onmouseout = function () {
    //   mySwiper.autoplay.start();
    // };
  },
  watch: {
    floor: {
      immediate: true,
      deep: true,
      handler() {
        this.$nextTick(() => {
          // 初始化Swiper轮播图插件类的实例对象
          const mySwiper = new Swiper(this.$refs.youSwiper, {
                direction: "horizontal",
                loop: true,
                pagination: {
                  el: ".swiper-pagination",
                  type: "bullets",
                  clickable: true,
                },
                autoplay: {
                  delay: 1000,
                  stopOnLastSlide: true,
                  disableOnInteraction: false,
                },
                navigation: {
                  nextEl: ".swiper-button-next",
                  prevEl: ".swiper-button-prev",
                },
                effect: "cube",
              }
          );
          mySwiper.el.onmouseover = function () {
            mySwiper.autoplay.stop();
          };
          mySwiper.el.onmouseout = function () {
            mySwiper.autoplay.start();
          };
        });
      }
    }
  }
}
</script>

<style lang="less" scoped>
.floor {
  margin-top: 15px;

  .py-container {
    width: 1200px;
    margin: 0 auto;

    .title {
      .fl {
        float: left;
        color: #c81623;
        font-size: 20px;
        line-height: 30px;
        margin: 9px 0;
        font-weight: 700;
      }

      .fr {
        float: right;

        .nav-tabs {
          margin: 10px 0 0;
          display: inline-block;

          li {
            float: left;
            line-height: 18px;

            a {
              padding-top: 1px;
              font-weight: 400;
              background-color: #fff;

              &::after {
                content: "|";
                padding: 0 10px;
              }
            }

            &:nth-child(7) {
              a {
                &::after {
                  content: "";
                }
              }
            }

            &.active {
              a {
                color: #e1251b;
              }
            }
          }
        }
      }
    }

    .tab-content {
      border-top: 2px solid #c81623;
      border-bottom: 1px solid #e4e4e4;

      .tab-pane {
        .floor-1 {
          height: 360px;
          display: flex;

          .blockgary {
            width: 210px;
            height: 100%;
            background: #f7f7f7;

            .jd-list {
              padding: 15px 0;
              overflow: hidden;

              li {
                list-style-type: none;
                float: left;
                width: 40%;
                margin: 0 10px;
                border-bottom: 1px solid #e4e4e4;
                text-align: center;
                line-height: 26px;
              }
            }

            img {
              width: 100%;
            }
          }

          .floorBanner {
            width: 330px;
            height: 100%;
          }

          .split {
            width: 220px;
            height: 100%;
            position: relative;

            .floor-x-line {
              position: absolute;
              background: #e4e4e4;
              width: 220px;
              height: 1px;
              top: 180px;
            }

            .floor-conver-pit {
              width: 100%;
              height: 50%;

              img {
                width: 100%;
                height: 100%;
                transition: all 400ms;

                &:hover {
                  opacity: 0.8;
                }
              }
            }
          }

          .center {
            border: 1px solid #e4e4e4;
          }
        }
      }
    }
  }
}
</style>
